package com.zd.bms.service;

import java.util.List;
import java.util.Map;

import org.springframework.transaction.annotation.Transactional;

import com.zd.bms.bean.vo.ScenicSpotDetailVo;
import com.zd.bms.bean.vo.req.ScenicSpotListReqVo;
import com.zd.common.bean.model.ScenicSpot;
import com.zd.common.dao.common.Page;
import com.zd.common.service.IBaseService;

public interface IScenicSpotService extends IBaseService<ScenicSpot> {
	/**
	 * 获取景区详细信息
	 * 
	 * @param id
	 * @return
	 * @throws Exception
	 */
	ScenicSpotDetailVo getScenicSpotDetail(Integer id) throws Exception;

	/**
	 * 分页获取景区详细信息
	 * 
	 * @param req
	 * @return
	 * @throws Exception
	 */
	Page<ScenicSpotDetailVo> pageScenicSpotDetail(ScenicSpotListReqVo req) throws Exception;

	/**
	 * 平台新增或者修改景区信息
	 * 
	 * @param detail
	 * @return
	 * @throws Exception
	 */
	@Transactional
	Map<String, Object> saveOrUpdateScenicSpotDetail(ScenicSpotDetailVo detail) throws Exception;

	/**
	 * 获取景区名字与id键值对
	 * 
	 * @return
	 * @throws Exception
	 */
	List<Map<String, Object>> getScenicSpotKeyValueList() throws Exception;
}
